package ${service};

import ${dto}.${table.alias}DTO;
import ${po}.${table.alias}PO;
import ${param}.${table.alias}Param;
<#if ifNeedStatistics==true>
import ${counts}.CountsDTO;
</#if>
import com.fingard.rh.fgmsp.common.bean.PageView;
import com.fingard.rh.fgmsp.common.bean.ResultContext;

/**
 * @author ${author}
 * @version 1.0 ${date}
 */
public interface ${table.alias}Service {

    /**
     * 列表查询  带高级查询
     * @param ${table.propertyName}Param 查询参数
     * @return 明细列表
     */
    PageView<${table.alias}DTO> listByParam(${table.alias}Param ${table.propertyName}Param);

<#if ifNeedStatistics==true>
    /**
     * 笔数金额统计 带高级查询
     * @param ${table.propertyName}Param 查询参数
     * @return 统计结果
     */
    ResultContext<CountsDTO> countByParam(${table.alias}Param ${table.propertyName}Param);
</#if>

    /**
     * 根据ID查询
<#if ifSpiltByEnt==true>     * @param entNum 险企号</#if>
     * @param id ID
     * @return ${table.remark}
     */
    ResultContext<${table.alias}PO> getById(<#if ifSpiltByEnt==true>String entNum,</#if> String id);

 }
